|
In computer science, a double-ended priority queue (DEPQ)〔(Data Structures, Algorithms, & Applications in Java: Double-Ended Priority Queues ), Sartaj Sahni, 1999.〕 or double-ended heap is a data structure similar to a priority queue or heap, but allows for efficient removal of both the maximum and minimum, according to some ordering on the ''keys'' (items) stored in the structure. Every element in a DEPQ has a priority or value. In a DEPQ, it is possible to remove the elements in both ascending as well as descending order. == Operations == A double-ended priority queue features the follow operations: ;isEmpty(): Checks if DEPQ is empty and returns true if empty. ;size(): Returns the total number of elements present in the DEPQ. ;getMin(): Returns the element having least priority. ;getMax(): Returns the element having highest priority. ;put(''x''): Inserts the element ''x'' in the DEPQ. ;removeMin(): Removes an element with minimum priority and returns this element. ;removeMax(): Removes an element with maximum priority and returns this element. If an operation is to be performed on two elements having the same priority, then the element inserted first is chosen. Also, the priority of any element can be changed once it has been inserted in the DEPQ. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Double-ended priority queue」の詳細全文を読む スポンサード リンク
|